package com.hyq.proxy.dynamicmodel;

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Proxy;

/**
* @ClassName: DynamicProxy 
* @Description: 动态代理方法
* @author Janus
 */
public class DynamicProxy<T> {
	public static <T> T newProxyInstance(ClassLoader loader,Class<?>[]interfaces, InvocationHandler h){
		//寻找JoinPoint连接点，AOP框架使用元数据定义
		if(true){
			//执行前置通知
			(new BeforeAdvice()).exec();
		}
		//执行目标，返回代理类执行结果。
		return (T) Proxy.newProxyInstance(loader, interfaces, h);
	}
}
